Skip to content

Conversation

@b41ex
Copy link
Collaborator

@b41ex b41ex commented Sep 18, 2025

Copied from #39 (comment)

Root cause: ctx.mergeKey is a part of cached diffEntry, but somehow is not a part of the diffUniquenessCache key.

oneOf values are compared combinatorially:

  • SearchRestParams vs SearchGQLParams
  • SearchGQLParams vs SearchRestParams
  • SearchRestParams vs SearchRestParams
  • SearchGQLParams vs SearchGQLParams

and by the time when the problematic comparison takes place (SearchGQLParams vs SearchGQLParams), the cache is already filled with the DiffEntry with the 'argument' value and with the propertyKey that is not correct for this comparison. And this diff eventually will end up overriding the 'subscription' diff here.

@github-actions github-actions bot added the bug Something isn't working label Sep 18, 2025
@b41ex b41ex merged commit 99b6df0 into develop Sep 18, 2025
12 of 15 checks passed
@b41ex b41ex deleted the bugfix/missing-enum-breaking-diff-in-oneOf-isolated branch September 18, 2025 16:08
@github-actions github-actions bot locked and limited conversation to collaborators Sep 18, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants